A barcode is an optical machine-readable representation of data that shows data about the object to which it attaches. Originally, barcodes represented data by varying the widths and spacings of parallel lines. These bar codes may be referred to as linear or one dimensional (i.e. 1D). Later, bar codes evolved into rectangles, dots, hexagons, and other geometric patterns in two dimensions (i.e. 2D). Although 2D barcodes use a variety of symbols, they are generally referred to as barcodes as well.